package com.gxar.quick.ar.server.db.model;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.ToString;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;

/**
 * 素材表
 *
 * @TableName materials
 */
@Data
@ToString
@Entity
@Table(name = "materials")
public class MaterialsEntity implements Serializable {

    /**
     * 主键
     */
    @ApiModelProperty("主键")
    @Id
    @GeneratedValue(strategy = GenerationType.IDENTITY)
    private Long id;
    /**
     * 素材名称
     */
    @ApiModelProperty("素材名称")
    private String name;
    /**
     * 素材连接
     */
    @ApiModelProperty("素材连接")
    private String linkUrl;
    /**
     * 素材高度
     */
    @ApiModelProperty("素材高度")
    private Integer height;
    /**
     * 素材宽度
     */
    @ApiModelProperty("素材宽度")
    private Integer width;
    /**
     * x轴起点坐标
     */
    @ApiModelProperty("x轴起点坐标")
    @Column(name = "inner_x")
    private Integer innerX;
    /**
     * y轴起点坐标
     */
    @ApiModelProperty("y轴起点坐标")
    @Column(name = "inner_y")
    private Integer innerY;
    /**
     * 创建者
     */
    @ApiModelProperty("创建者")
    private String creator;
    /**
     * 创建时间
     */
    @ApiModelProperty("创建时间")
    private Date createdAt;
    /**
     * 修改者
     */
    @ApiModelProperty("修改者")
    private String operator;
    /**
     * 修改时间
     */
    @ApiModelProperty("修改时间")
    private Date updatedAt;

    /**
     * 素材类型
     * {@link  com.gxar.quick.ar.server.base.common.enums.MaterialTypeEnum}
     */
    @ApiModelProperty("素材类型")
    private Integer type;

    /**
     * 缩略图链接
     */
    @ApiModelProperty("缩略图链接")
    private String imageUrl;

    /**
     * 素材内部高度
     */
    @ApiModelProperty("素材内部高度")
    private Integer innerHeight;

    /**
     * 素材内部宽度
     */
    @ApiModelProperty("素材内部宽度")
    private Integer innerWidth;
}
